struct cxlmi_event_record {
	uint8_t uuid[0x10];
	uint8_t length;
	uint8_t flags[3];
	uint16_t handle;
	uint16_t related_handle;
	uint64_t timestamp;
	uint8_t maint_op_class;
	uint8_t maint_op_subclass;
	uint8_t reserved[0xe];
	uint8_t data[0x50];
};
struct cxlmi_cmd_get_event_records_rsp {
	uint8_t flags;
	uint8_t reserved1;
	uint16_t overflow_err_count;
	uint64_t first_overflow_timestamp;
	uint64_t last_overflow_timestamp;
	uint16_t record_count;
	uint8_t reserved2[0xa];
	struct cxlmi_event_record records[];
};



const struct FieldInfo rspFields[] = {
	{"flags", offsetof(struct cxlmi_cmd_get_event_records_rsp, flags), sizeof(rsp->flags), 0, 1, NULL},
	{"reserved1", offsetof(struct cxlmi_cmd_get_event_records_rsp, reserved1), sizeof(rsp->reserved1), 0, 1, NULL},
	{"overflow_err_count", offsetof(struct cxlmi_cmd_get_event_records_rsp, overflow_err_count), sizeof(rsp->overflow_err_count), 0, 1, NULL},
	{"first_overflow_timestamp", offsetof(struct cxlmi_cmd_get_event_records_rsp, first_overflow_timestamp), sizeof(rsp->first_overflow_timestamp), 0, 1, NULL},
	{"last_overflow_timestamp", offsetof(struct cxlmi_cmd_get_event_records_rsp, last_overflow_timestamp), sizeof(rsp->last_overflow_timestamp), 0, 1, NULL},
	{"record_count", offsetof(struct cxlmi_cmd_get_event_records_rsp, record_count), sizeof(rsp->record_count), 0, 1, NULL},
	{"reserved2", offsetof(struct cxlmi_cmd_get_event_records_rsp, reserved2), sizeof(rsp->reserved2), 0, 1, NULL},
	{"records", offsetof(struct cxlmi_cmd_get_event_records_rsp, records), sizeof(struct cxlmi_event_record), 0, 3, (const struct FieldInfo[]){
		{"uuid", offsetof(struct cxlmi_event_record, uuid), sizeof(rsp->records[0].uuid), 0, 1, NULL},
		{"length", offsetof(struct cxlmi_event_record, length), sizeof(rsp->records[0].length), 0, 1, NULL},
		{"flags", offsetof(struct cxlmi_event_record, flags), sizeof(rsp->records[0].flags), 0, 1, NULL},
		{"handle", offsetof(struct cxlmi_event_record, handle), sizeof(rsp->records[0].handle), 0, 1, NULL},
		{"related_handle", offsetof(struct cxlmi_event_record, related_handle), sizeof(rsp->records[0].related_handle), 0, 1, NULL},
		{"timestamp", offsetof(struct cxlmi_event_record, timestamp), sizeof(rsp->records[0].timestamp), 0, 1, NULL},
		{"maint_op_class", offsetof(struct cxlmi_event_record, maint_op_class), sizeof(rsp->records[0].maint_op_class), 0, 1, NULL},
		{"maint_op_subclass", offsetof(struct cxlmi_event_record, maint_op_subclass), sizeof(rsp->records[0].maint_op_subclass), 0, 1, NULL},
		{"reserved", offsetof(struct cxlmi_event_record, reserved), sizeof(rsp->records[0].reserved), 0, 1, NULL},
		{"data", offsetof(struct cxlmi_event_record, data), sizeof(rsp->records[0].data), 0, 1, NULL},
		{NULL, 0, 0, 0, 0, NULL}
	}},
	{NULL, 0, 0, 0, 0, NULL}
};


struct cxlmi_cmd_fmapi_ld_allocations_list {
	uint64_t range_1_allocation_mult;
	uint64_t range_2_allocation_mult;
};

struct cxlmi_cmd_fmapi_set_ld_allocations_req {
	uint8_t number_ld;
	uint8_t start_ld_id;
	uint8_t rsvd[2];
	struct cxlmi_cmd_fmapi_ld_allocations_list ld_allocation_list[];
};

const struct FieldInfo reqFields[] = {
	{"number_ld", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, number_ld), sizeof(rsp->number_ld), 0, 1, NULL},
	{"start_ld_id", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, start_ld_id), sizeof(rsp->start_ld_id), 0, 1, NULL},
	{"rsvd", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, rsvd), sizeof(rsp->rsvd), 0, 1, NULL},
	{"ld_allocation_list", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, ld_allocation_list), sizeof(struct cxlmi_cmd_fmapi_ld_allocations_list), 0, 3, (const struct FieldInfo[]){
		{"range_1_allocation_mult", offsetof(struct cxlmi_cmd_fmapi_ld_allocations_list, range_1_allocation_mult), sizeof(rsp->ld_allocation_list[0].range_1_allocation_mult), 0, 1, NULL},
		{"range_2_allocation_mult", offsetof(struct cxlmi_cmd_fmapi_ld_allocations_list, range_2_allocation_mult), sizeof(rsp->ld_allocation_list[0].range_2_allocation_mult), 0, 1, NULL},
		{NULL, 0, 0, 0, 0, NULL}
	}},
	{NULL, 0, 0, 0, 0, NULL}
};


const struct FieldInfo reqFields[] = {
	{"number_ld", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, number_ld), sizeof(req->number_ld), 0, 1, NULL},
	{"start_ld_id", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, start_ld_id), sizeof(req->start_ld_id), 0, 1, NULL},
	{"rsvd", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, rsvd), sizeof(req->rsvd), 0, 1, NULL},
	{"ld_allocation_list", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_req, ld_allocation_list), sizeof(struct cxlmi_cmd_fmapi_ld_allocations_list), 0, 2, (const struct FieldInfo[]){
		{"range_1_allocation_mult", offsetof(struct cxlmi_cmd_fmapi_ld_allocations_list, range_1_allocation_mult), sizeof(req->ld_allocation_list[0].range_1_allocation_mult), 0, 1, NULL},
		{"range_2_allocation_mult", offsetof(struct cxlmi_cmd_fmapi_ld_allocations_list, range_2_allocation_mult), sizeof(req->ld_allocation_list[0].range_2_allocation_mult), 0, 1, NULL},
		{NULL, 0, 0, 0, 0, NULL}
	}},
	{NULL, 0, 0, 0, 0, NULL}
};

const struct FieldInfo rspFields[] = {
	{"number_ld", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_rsp, number_ld), sizeof(rsp->number_ld), 0, 1, NULL},
	{"start_ld_id", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_rsp, start_ld_id), sizeof(rsp->start_ld_id), 0, 1, NULL},
	{"rsvd", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_rsp, rsvd), sizeof(rsp->rsvd), 0, 1, NULL},
	{"ld_allocation_list", offsetof(struct cxlmi_cmd_fmapi_set_ld_allocations_rsp, ld_allocation_list), sizeof(struct cxlmi_cmd_fmapi_ld_allocations_list), 0, 2, (const struct FieldInfo[]){
		{"range_1_allocation_mult", offsetof(struct cxlmi_cmd_fmapi_ld_allocations_list, range_1_allocation_mult), sizeof(rsp->ld_allocation_list[0].range_1_allocation_mult), 0, 1, NULL},
		{"range_2_allocation_mult", offsetof(struct cxlmi_cmd_fmapi_ld_allocations_list, range_2_allocation_mult), sizeof(rsp->ld_allocation_list[0].range_2_allocation_mult), 0, 1, NULL},
		{NULL, 0, 0, 0, 0, NULL}
	}},
	{NULL, 0, 0, 0, 0, NULL}
};